home *** CD-ROM | disk | FTP | other *** search
/ Mac-Source 1994 July / Mac-Source_July_1994.iso / C and C++ / Graphics⁄Sound / WireFrame-o-rama.src / NewShuttle.π / Shuttle.p < prev    next >
Encoding:
Text File  |  1993-06-22  |  14.6 KB  |  810 lines  |  [TEXT/EDIT]

  1. {Wire frame shuttle viewer}
  2. {by Eddy Vasile 70451,3333 compuserve}
  3. {Plot points collected from a fortran bbs in 86}
  4. {To compile this program: }
  5. {1st: if this file (shuttle.p) is not in a sit file along with a resource file, then:}
  6. {create a WIND resource shuttle.pi.rsrc (use option p for pi)}
  7. {Make sure that the size of the window is the largest possible by }
  8. {stretching it as far as resedit will allow it. Change the resource id to 400}
  9. {and give it an adequate name like shuttle viewer. Make sure you click on purgeable}
  10. {2nd: create a project shuttle.pi and then add shuttle.p (this program) at the bottom}
  11. {click on run options and select 'uses resource file.' Select the resource}
  12. {file created  above or included in the sit file.}
  13.  
  14.  
  15. program ShuttleViewer;
  16. const
  17.     maxa = 300;
  18.     maxv = 124;
  19.     maxe = 259;
  20.     r1 = 400;
  21.     maxd = 631;
  22.  
  23. var
  24.     oxangle, oyangle, ozangle, pc, ec: integer;
  25.     CH, SH, CP, SP, CB, SB, xv, yv, zv, X, Y, Z, X3, Y3, Z3, AM, BM, CM, DM, EM, FM, GM, HM, IM, D, P, B, H, U, vc, U1, V1: real;
  26.     V: array[1..maxa, 1..3] of real;
  27.     E: array[1..maxa] of real;
  28.     data: array[1..maxd] of real;
  29.     w: windowptr;
  30.     ticks: longint;
  31.  
  32. procedure setdataarray;
  33. begin
  34.     data[1] := 0;
  35.     data[2] := -2;
  36.     data[3] := 46;
  37.     data[4] := 2;
  38.     data[5] := -3;
  39.     data[6] := 46;
  40.     data[7] := 2;
  41.     data[8] := -5;
  42.     data[9] := 46;
  43.     data[10] := 2;
  44.     data[11] := -7;
  45.     data[12] := 46;
  46.     data[13] := 0;
  47.     data[14] := -7;
  48.     data[15] := 46;
  49.     data[16] := -2;
  50.     data[17] := -7;
  51.     data[18] := 46;
  52.     data[19] := -2;
  53.     data[20] := -5;
  54.     data[21] := 46;
  55.     data[22] := -2;
  56.     data[23] := -3;
  57.     data[24] := 46;
  58.     data[25] := 0;
  59.     data[26] := -1;
  60.     data[27] := 43;
  61.     data[28] := 3;
  62.     data[29] := -2;
  63.     data[30] := 43;
  64.     data[31] := 4;
  65.     data[32] := -5;
  66.     data[33] := 43;
  67.     data[34] := 3;
  68.     data[35] := -7;
  69.     data[36] := 43;
  70.     data[37] := 0;
  71.     data[38] := -8;
  72.     data[39] := 43;
  73.     data[40] := -3;
  74.     data[41] := -7;
  75.     data[42] := 43;
  76.     data[43] := -4;
  77.     data[44] := -5;
  78.     data[45] := 43;
  79.     data[46] := -3;
  80.     data[47] := -2;
  81.     data[48] := 43;
  82.     data[49] := 0;
  83.     data[50] := 2;
  84.     data[51] := 38;
  85.     data[52] := 5;
  86.     data[53] := 0;
  87.     data[54] := 38;
  88.     data[55] := 6;
  89.     data[56] := -4;
  90.     data[57] := 38;
  91.     data[58] := 4;
  92.     data[59] := -8;
  93.     data[60] := 38;
  94.     data[61] := 0;
  95.     data[62] := -9;
  96.     data[63] := 38;
  97.     data[64] := -4;
  98.     data[65] := -8;
  99.     data[66] := 38;
  100.     data[67] := -6;
  101.     data[68] := -4;
  102.     data[69] := 38;
  103.     data[70] := -5;
  104.     data[71] := 0;
  105.     data[72] := 38;
  106.     data[73] := 0;
  107.     data[74] := 4;
  108.     data[75] := 33;
  109.     data[76] := 5;
  110.     data[77] := 1;
  111.     data[78] := 33;
  112.     data[79] := 6;
  113.     data[80] := -5;
  114.     data[81] := 33;
  115.     data[82] := 4;
  116.     data[83] := -9;
  117.     data[84] := 33;
  118.     data[85] := 0;
  119.     data[86] := -10;
  120.     data[87] := 33;
  121.     data[88] := -4;
  122.     data[89] := -9;
  123.     data[90] := 33;
  124.     data[91] := -6;
  125.     data[92] := -5;
  126.     data[93] := 33;
  127.     data[94] := -5;
  128.     data[95] := 1;
  129.     data[96] := 33;
  130.     data[97] := 0;
  131.     data[98] := 8;
  132.     data[99] := 26;
  133.     data[100] := 4;
  134.     data[101] := 7;
  135.     data[102] := 26;
  136.     data[103] := 8;
  137.     data[104] := 2;
  138.     data[105] := 26;
  139.     data[106] := 8;
  140.     data[107] := -7;
  141.     data[108] := 26;
  142.     data[109] := 0;
  143.     data[110] := -10;
  144.     data[111] := 26;
  145.     data[112] := -8;
  146.     data[113] := -7;
  147.     data[114] := 26;
  148.     data[115] := -8;
  149.     data[116] := 2;
  150.     data[117] := 26;
  151.     data[118] := -4;
  152.     data[119] := 7;
  153.     data[120] := 26;
  154.     data[121] := 0;
  155.     data[122] := 8;
  156.     data[123] := 22;
  157.     data[124] := 4;
  158.     data[125] := 8;
  159.     data[126] := 22;
  160.     data[127] := 8;
  161.     data[128] := 3;
  162.     data[129] := 22;
  163.     data[130] := 8;
  164.     data[131] := -8;
  165.     data[132] := 22;
  166.     data[133] := 0;
  167.     data[134] := -10;
  168.     data[135] := 22;
  169.     data[136] := -8;
  170.     data[137] := -8;
  171.     data[138] := 22;
  172.     data[139] := -8;
  173.     data[140] := 3;
  174.     data[141] := 22;
  175.     data[142] := -4;
  176.     data[143] := 8;
  177.     data[144] := 22;
  178.     data[145] := 0;
  179.     data[146] := 8;
  180.     data[147] := 14;
  181.     data[148] := 5;
  182.     data[149] := 7;
  183.     data[150] := 14;
  184.     data[151] := 8;
  185.     data[152] := 4;
  186.     data[153] := 14;
  187.     data[154] := 8;
  188.     data[155] := -9;
  189.     data[156] := 14;
  190.     data[157] := 0;
  191.     data[158] := -10;
  192.     data[159] := 14;
  193.     data[160] := -8;
  194.     data[161] := -9;
  195.     data[162] := 14;
  196.     data[163] := -8;
  197.     data[164] := 4;
  198.     data[165] := 14;
  199.     data[166] := -5;
  200.     data[167] := 7;
  201.     data[168] := 14;
  202.     data[169] := 0;
  203.     data[170] := 8;
  204.     data[171] := 4;
  205.     data[172] := 5;
  206.     data[173] := 7;
  207.     data[174] := 4;
  208.     data[175] := 8;
  209.     data[176] := 4;
  210.     data[177] := 4;
  211.     data[178] := 8;
  212.     data[179] := -9;
  213.     data[180] := 4;
  214.     data[181] := 0;
  215.     data[182] := -10;
  216.     data[183] := 4;
  217.     data[184] := -8;
  218.     data[185] := -9;
  219.     data[186] := 4;
  220.     data[187] := -8;
  221.     data[188] := 4;
  222.     data[189] := 4;
  223.     data[190] := -5;
  224.     data[191] := 7;
  225.     data[192] := 4;
  226.     data[193] := 0;
  227.     data[194] := 8;
  228.     data[195] := -12;
  229.     data[196] := 5;
  230.     data[197] := 7;
  231.     data[198] := -12;
  232.     data[199] := 8;
  233.     data[200] := 4;
  234.     data[201] := -12;
  235.     data[202] := 8;
  236.     data[203] := -9;
  237.     data[204] := -12;
  238.     data[205] := 0;
  239.     data[206] := -10;
  240.     data[207] := -12;
  241.     data[208] := -8;
  242.     data[209] := -9;
  243.     data[210] := -12;
  244.     data[211] := -8;
  245.     data[212] := 4;
  246.     data[213] := -12;
  247.     data[214] := -5;
  248.     data[215] := 7;
  249.     data[216] := -12;
  250.     data[217] := 0;
  251.     data[218] := 8;
  252.     data[219] := -27;
  253.     data[220] := 5;
  254.     data[221] := 7;
  255.     data[222] := -27;
  256.     data[223] := 8;
  257.     data[224] := 4;
  258.     data[225] := -27;
  259.     data[226] := 8;
  260.     data[227] := -9;
  261.     data[228] := -27;
  262.     data[229] := 0;
  263.     data[230] := -10;
  264.     data[231] := -27;
  265.     data[232] := -8;
  266.     data[233] := -9;
  267.     data[234] := -27;
  268.     data[235] := -8;
  269.     data[236] := 4;
  270.     data[237] := -27;
  271.     data[238] := -5;
  272.     data[239] := 7;
  273.     data[240] := -27;
  274.     data[241] := 0;
  275.     data[242] := 8;
  276.     data[243] := -36;
  277.     data[244] := 5;
  278.     data[245] := 7;
  279.     data[246] := -36;
  280.     data[247] := 8;
  281.     data[248] := 4;
  282.     data[249] := -36;
  283.     data[250] := 8;
  284.     data[251] := -9;
  285.     data[252] := -36;
  286.     data[253] := 0;
  287.     data[254] := -10;
  288.     data[255] := -36;
  289.     data[256] := -8;
  290.     data[257] := -9;
  291.     data[258] := -36;
  292.     data[259] := -8;
  293.     data[260] := 4;
  294.     data[261] := -36;
  295.     data[262] := -5;
  296.     data[263] := 7;
  297.     data[264] := -36;
  298.     data[265] := 0;
  299.     data[266] := 9;
  300.     data[267] := -43;
  301.     data[268] := 2;
  302.     data[269] := 9;
  303.     data[270] := -43;
  304.     data[271] := 9;
  305.     data[272] := 2;
  306.     data[273] := -43;
  307.     data[274] := 9;
  308.     data[275] := -10;
  309.     data[276] := -43;
  310.     data[277] := 0;
  311.     data[278] := -11;
  312.     data[279] := -43;
  313.     data[280] := -9;
  314.     data[281] := -10;
  315.     data[282] := -43;
  316.     data[283] := -9;
  317.     data[284] := 2;
  318.     data[285] := -43;
  319.     data[286] := -2;
  320.     data[287] := 9;
  321.     data[288] := -43;
  322.     data[289] := 0;
  323.     data[290] := 10;
  324.     data[291] := -48;
  325.     data[292] := 2;
  326.     data[293] := 9;
  327.     data[294] := -48;
  328.     data[295] := 9;
  329.     data[296] := 2;
  330.     data[297] := -48;
  331.     data[298] := 10;
  332.     data[299] := -10;
  333.     data[300] := -48;
  334.     data[301] := 0;
  335.     data[302] := -10;
  336.     data[303] := -48;
  337.     data[304] := -10;
  338.     data[305] := -10;
  339.     data[306] := -48;
  340.     data[307] := -9;
  341.     data[308] := 2;
  342.     data[309] := -48;
  343.     data[310] := -2;
  344.     data[311] := 9;
  345.     data[312] := -48;
  346.     data[313] := 9;
  347.     data[314] := -9;
  348.     data[315] := 21;
  349.     data[316] := 15;
  350.     data[317] := -9;
  351.     data[318] := -16;
  352.     data[319] := 35;
  353.     data[320] := -10;
  354.     data[321] := -36;
  355.     data[322] := 35;
  356.     data[323] := -10;
  357.     data[324] := -40;
  358.     data[325] := -9;
  359.     data[326] := -9;
  360.     data[327] := 21;
  361.     data[328] := -15;
  362.     data[329] := -9;
  363.     data[330] := -16;
  364.     data[331] := -35;
  365.     data[332] := -10;
  366.     data[333] := -36;
  367.     data[334] := -35;
  368.     data[335] := -10;
  369.     data[336] := -40;
  370.     data[337] := 0;
  371.     data[338] := 13;
  372.     data[339] := -37;
  373.     data[340] := 0;
  374.     data[341] := 33;
  375.     data[342] := -60;
  376.     data[343] := 0;
  377.     data[344] := 33;
  378.     data[345] := -69;
  379.     data[346] := 0;
  380.     data[347] := 14;
  381.     data[348] := -60;
  382.     data[349] := 6;
  383.     data[350] := 11;
  384.     data[351] := -43;
  385.     data[352] := 6;
  386.     data[353] := 11;
  387.     data[354] := -48;
  388.     data[355] := 11;
  389.     data[356] := 5;
  390.     data[357] := -43;
  391.     data[358] := 11;
  392.     data[359] := 5;
  393.     data[360] := -48;
  394.     data[361] := -6;
  395.     data[362] := 11;
  396.     data[363] := -43;
  397.     data[364] := -6;
  398.     data[365] := 11;
  399.     data[366] := -48;
  400.     data[367] := -11;
  401.     data[368] := 5;
  402.     data[369] := -43;
  403.     data[370] := -11;
  404.     data[371] := 5;
  405.     data[372] := -48;
  406.     data[373] := -1;
  407.     data[374] := 2;
  408.     data[375] := 3;
  409.     data[376] := 4;
  410.     data[377] := 5;
  411.     data[378] := 6;
  412.     data[379] := 7;
  413.     data[380] := 8;
  414.     data[381] := 1;
  415.     data[382] := -9;
  416.     data[383] := 10;
  417.     data[384] := 11;
  418.     data[385] := 12;
  419.     data[386] := 13;
  420.     data[387] := 14;
  421.     data[388] := 15;
  422.     data[389] := 16;
  423.     data[390] := 9;
  424.     data[391] := -17;
  425.     data[392] := 18;
  426.     data[393] := 19;
  427.     data[394] := 20;
  428.     data[395] := 21;
  429.     data[396] := 22;
  430.     data[397] := 23;
  431.     data[398] := 24;
  432.     data[399] := 17;
  433.     data[400] := -25;
  434.     data[401] := 26;
  435.     data[402] := 27;
  436.     data[403] := 28;
  437.     data[404] := 29;
  438.     data[405] := 30;
  439.     data[406] := 31;
  440.     data[407] := 32;
  441.     data[408] := 25;
  442.     data[409] := -33;
  443.     data[410] := 34;
  444.     data[411] := 35;
  445.     data[412] := 36;
  446.     data[413] := 37;
  447.     data[414] := 38;
  448.     data[415] := 39;
  449.     data[416] := 40;
  450.     data[417] := 33;
  451.     data[418] := -41;
  452.     data[419] := 42;
  453.     data[420] := 43;
  454.     data[421] := 44;
  455.     data[422] := 45;
  456.     data[423] := 46;
  457.     data[424] := 47;
  458.     data[425] := 48;
  459.     data[426] := 41;
  460.     data[427] := -49;
  461.     data[428] := 50;
  462.     data[429] := 51;
  463.     data[430] := 52;
  464.     data[431] := 53;
  465.     data[432] := 54;
  466.     data[433] := 55;
  467.     data[434] := 56;
  468.     data[435] := 49;
  469.     data[436] := -57;
  470.     data[437] := 58;
  471.     data[438] := 59;
  472.     data[439] := 60;
  473.     data[440] := 61;
  474.     data[441] := 62;
  475.     data[442] := 63;
  476.     data[443] := 64;
  477.     data[444] := 57;
  478.     data[445] := -65;
  479.     data[446] := 66;
  480.     data[447] := 67;
  481.     data[448] := 68;
  482.     data[449] := 69;
  483.     data[450] := 70;
  484.     data[451] := 71;
  485.     data[452] := 72;
  486.     data[453] := 65;
  487.     data[454] := -73;
  488.     data[455] := 74;
  489.     data[456] := 75;
  490.     data[457] := 76;
  491.     data[458] := 77;
  492.     data[459] := 78;
  493.     data[460] := 79;
  494.     data[461] := 80;
  495.     data[462] := 73;
  496.     data[463] := -81;
  497.     data[464] := 82;
  498.     data[465] := 83;
  499.     data[466] := 84;
  500.     data[467] := 85;
  501.     data[468] := 86;
  502.     data[469] := 87;
  503.     data[470] := 88;
  504.     data[471] := 81;
  505.     data[472] := -89;
  506.     data[473] := 90;
  507.     data[474] := 91;
  508.     data[475] := 92;
  509.     data[476] := 93;
  510.     data[477] := 94;
  511.     data[478] := 95;
  512.     data[479] := 96;
  513.     data[480] := 89;
  514.     data[481] := -97;
  515.     data[482] := 98;
  516.     data[483] := 99;
  517.     data[484] := 100;
  518.     data[485] := 101;
  519.     data[486] := 102;
  520.     data[487] := 103;
  521.     data[488] := 104;
  522.     data[489] := 97;
  523.     data[490] := -1;
  524.     data[491] := 9;
  525.     data[492] := 17;
  526.     data[493] := 25;
  527.     data[494] := 33;
  528.     data[495] := 41;
  529.     data[496] := 49;
  530.     data[497] := 57;
  531.     data[498] := 65;
  532.     data[499] := 73;
  533.     data[500] := 81;
  534.     data[501] := 89;
  535.     data[502] := 97;
  536.     data[503] := -2;
  537.     data[504] := 10;
  538.     data[505] := 18;
  539.     data[506] := 26;
  540.     data[507] := 34;
  541.     data[508] := 42;
  542.     data[509] := 50;
  543.     data[510] := 58;
  544.     data[511] := 66;
  545.     data[512] := 74;
  546.     data[513] := 82;
  547.     data[514] := 90;
  548.     data[515] := 98;
  549.     data[516] := -3;
  550.     data[517] := 11;
  551.     data[518] := 19;
  552.     data[519] := 27;
  553.     data[520] := 35;
  554.     data[521] := 43;
  555.     data[522] := 51;
  556.     data[523] := 59;
  557.     data[524] := 67;
  558.     data[525] := 75;
  559.     data[526] := 83;
  560.     data[527] := 91;
  561.     data[528] := 99;
  562.     data[529] := -4;
  563.     data[530] := 12;
  564.     data[531] := 20;
  565.     data[532] := 28;
  566.     data[533] := 36;
  567.     data[534] := 44;
  568.     data[535] := 52;
  569.     data[536] := 60;
  570.     data[537] := 68;
  571.     data[538] := 76;
  572.     data[539] := 84;
  573.     data[540] := 92;
  574.     data[541] := 100;
  575.     data[542] := -5;
  576.     data[543] := 13;
  577.     data[544] := 21;
  578.     data[545] := 29;
  579.     data[546] := 37;
  580.     data[547] := 45;
  581.     data[548] := 53;
  582.     data[549] := 61;
  583.     data[550] := 69;
  584.     data[551] := 77;
  585.     data[552] := 85;
  586.     data[553] := 93;
  587.     data[554] := 101;
  588.     data[555] := -6;
  589.     data[556] := 14;
  590.     data[557] := 22;
  591.     data[558] := 30;
  592.     data[559] := 38;
  593.     data[560] := 46;
  594.     data[561] := 54;
  595.     data[562] := 62;
  596.     data[563] := 70;
  597.     data[564] := 78;
  598.     data[565] := 86;
  599.     data[566] := 94;
  600.     data[567] := 102;
  601.     data[568] := -7;
  602.     data[569] := 15;
  603.     data[570] := 23;
  604.     data[571] := 31;
  605.     data[572] := 39;
  606.     data[573] := 47;
  607.     data[574] := 55;
  608.     data[575] := 63;
  609.     data[576] := 71;
  610.     data[577] := 79;
  611.     data[578] := 87;
  612.     data[579] := 95;
  613.     data[580] := 103;
  614.     data[581] := -8;
  615.     data[582] := 16;
  616.     data[583] := 24;
  617.     data[584] := 32;
  618.     data[585] := 40;
  619.     data[586] := 48;
  620.     data[587] := 56;
  621.     data[588] := 64;
  622.     data[589] := 72;
  623.     data[590] := 80;
  624.     data[591] := 88;
  625.     data[592] := 96;
  626.     data[593] := 104;
  627.     data[594] := -44;
  628.     data[595] := 105;
  629.     data[596] := 106;
  630.     data[597] := 107;
  631.     data[598] := 108;
  632.     data[599] := 92;
  633.     data[600] := -46;
  634.     data[601] := 109;
  635.     data[602] := 110;
  636.     data[603] := 111;
  637.     data[604] := 112;
  638.     data[605] := 94;
  639.     data[606] := -81;
  640.     data[607] := 113;
  641.     data[608] := 114;
  642.     data[609] := 115;
  643.     data[610] := 116;
  644.     data[611] := 89;
  645.     data[612] := -82;
  646.     data[613] := 117;
  647.     data[614] := 118;
  648.     data[615] := -83;
  649.     data[616] := 119;
  650.     data[617] := 120;
  651.     data[618] := -87;
  652.     data[619] := 121;
  653.     data[620] := 122;
  654.     data[621] := -88;
  655.     data[622] := 123;
  656.     data[623] := 124;
  657.     data[624] := -117;
  658.     data[625] := 119;
  659.     data[626] := -121;
  660.     data[627] := 123;
  661.     data[628] := -118;
  662.     data[629] := 120;
  663.     data[630] := -122;
  664.     data[631] := 124;
  665. end;
  666.  
  667. procedure muck1;
  668. begin
  669.     CH := COS(H);
  670.     SH := SIN(H);
  671.     CP := COS(P);
  672.     SP := SIN(P);
  673.     CB := COS(B);
  674.     SB := SIN(B);
  675.     AM := CB * CH - SH * SP * SB;
  676.     BM := -CB * SH - SP * CH * SB;
  677.     CM := CP * SB;
  678.     DM := SH * CP;
  679.     EM := CP * CH;
  680.     FM := SP;
  681.     GM := -CH * SB - SH * SP * CB;
  682.     HM := SH * SB - SP * CH * CB;
  683.     IM := CP * CB;
  684. end;
  685.  
  686. procedure muck2;
  687. begin
  688.     X := X - XV;
  689.     Y := Y - YV;
  690.     Z := Z - ZV;
  691.     X3 := AM * X + BM * Y + CM * Z;
  692.     Y3 := DM * X + EM * Y + FM * Z;
  693.     Z3 := GM * X + HM * Y + IM * Z;
  694.     U := 135 + 13.5 * D * X3 / Y3;
  695.     Vc := 80 - 11.5 * D * Z3 / Y3;
  696. end;
  697.  
  698. procedure muck3;
  699.     var
  700.         Ec: integer;
  701. begin
  702.     X := 0;
  703.     Y := 0;
  704.     Z := 0;
  705.     X3 := 0;
  706.     Y3 := 0;
  707.     Z3 := 0;
  708.     AM := 0;
  709.     BM := 0;
  710.     CM := 0;
  711.     DM := 0;
  712.     EM := 0;
  713.     FM := 0;
  714.     GM := 0;
  715.     HM := 0;
  716.     IM := 0;
  717.     D := 0;
  718.     P := 0;
  719.     B := 0;
  720.     H := 0;
  721.     U := 0;
  722.     Vc := 0;
  723.     U1 := 0;
  724.     V1 := 0;
  725.     D := 120;
  726.     P := 6.28 * oxangle / 255 - 3.1416;
  727.     B := 6.28 * ozangle / 255;
  728.     H := 6.28 * oyangle / 255;
  729.     muck1;
  730.     XV := -D * CP * SH;
  731.     YV := -D * CP * CH;
  732.     ZV := -D * SP;
  733.     for Ec := 1 to maxe do
  734.         begin
  735.             X := V[ABS(round(E[Ec])), 1];
  736.             Y := V[ABS(round(E[Ec])), 2];
  737.             Z := V[ABS(round(E[Ec])), 3];
  738.             muck2;
  739.             if E[Ec] > 0 then
  740.                 begin
  741.                     moveto(round(U1 * 2 + 75), round(V1 + 20));
  742.                     lineto(round(U * 2 + 75), round(Vc + 20));
  743.                 end;
  744.             U1 := U;
  745.             V1 := Vc;
  746.         end;
  747. end;
  748.  
  749. procedure winit (var w: windowptr);
  750. begin
  751.     w := getnewwindow(r1, nil, windowptr(-1));
  752.     showwindow(w);
  753.     setport(w);
  754.     moveto(50, 240);
  755.     textsize(18);
  756.     textface([Shadow]);
  757.     drawstring('Eddy'' s Shuttle Viewer ');
  758.     moveto(50, 260);
  759.     textsize(12);
  760.     textface([bold]);
  761.     drawstring('Click and hold button down to STOP');
  762.     moveto(50, 280);
  763.     textsize(10);
  764.     textface([italic]);
  765.     drawstring('ThinkPas Code by Eddy Vasile. Plot Points from anonymous source');
  766.     moveto(200, 170);
  767.     textsize(10);
  768.     drawstring('Wait for a couple of views before clicking');
  769.     delay(100, ticks);
  770. end;
  771.  
  772. procedure initvars;
  773.     var
  774.         position, j, ec, pc: integer;
  775. begin
  776.     position := 0;
  777.     for Pc := 1 to maxv do
  778.         begin
  779.             for j := 1 to 3 do
  780.                 begin
  781.                     position := position + 1;
  782.                     v[pc, j] := data[position] * 0.12;
  783.                 end;
  784.         end;
  785.     for Ec := 1 to maxe do
  786.         begin
  787.             position := position + 1;
  788.             e[ec] := data[position];
  789.         end;
  790. end;
  791. procedure mainloop;
  792. begin
  793.     while (not button) do
  794.         begin
  795.             fillrect(0, 180, 200, 500, white);
  796.             muck3;
  797.             delay(150, ticks);
  798.             oxangle := oxangle + 10;
  799.             oyangle := oyangle + 10;
  800.             ozangle := ozangle + 10;
  801.         end;
  802. end;
  803.  
  804.  
  805. begin
  806. setdataarray;
  807. initvars;
  808. winit(w);
  809. mainloop;
  810. end.